// 首页数据管理
import { reqCategoryList, reqGetBannerList, reqFloorList } from "@/api"

// state: 数据对象
const state = {
    // 分类数据
    categoryList: [],
    // 轮播图数据
    bannerList: [],
    // 楼层数据
    floorList: []
};
// mutations：专门用于修改state中的数据
const mutations = {
    // 修改state中的分类数据
    GETCATEGORYLIST(state, categoryList) {
        state.categoryList = categoryList
    },
    // 修改state中的轮播图banner数据
    GETBANNERLIST(state, bannerList) {
        state.bannerList = bannerList
    },
    // 修改state中的楼层floor数据
    GETFLOORLIST(state, floorList) {
        state.floorList = floorList
    }
};
// action：书写业务逻辑，进行异步处理
const actions = {
    // 发送请求获取分类数据
    async categoryList({ commit }) {
        let result = await reqCategoryList();
        if (result.code == 200) {
            commit("GETCATEGORYLIST", result.data)
        }
    },
    // 发送请求获取轮播图banner数据
    async getBannerList({ commit }) {
        let result = await reqGetBannerList();
        if (result.code == 200) {
            commit('GETBANNERLIST', result.data)
        }
    },
    // 发送请求获取楼层floor数据
    async getFloorList({ commit }) {
        const result = await reqFloorList();
        if (result.code == 200) {
            commit('GETFLOORLIST', result.data)
        }
    }
};
// getters：类似计算属性
const getters = {}

export default {
    state,
    mutations,
    actions,
    getters
}